package busco

// @schema_export --ident=schema --json --config=数据表过滤器
// @schema_go
// @cache_go
// @cache_ts
// @alias 数据表过滤器
type B数据表过滤器 struct {
	// @alias 字段信息
	Z字段信息 []*S数据表过滤项信息
}

type S数据表过滤项信息 struct {
	// 字段名
	// @alias 字段名
	Z字段名 string

	// @alias 允许取反
	Y允许取反 bool

	// todo: 允许添加新的过滤项
	// * 数字类型的想限制范围
	// * 包含多个指定值（$in)
	// @alias 允许多个
	Y允许多个 bool

	// 根据字段类型有默认的比较, 可通过标旗禁止默认的比较
	// @alias 禁止比较标旗
	J禁止比较标旗 map[S数据表过滤器比较]bool
}

// @schema_go
// @alias 数据表过滤器比较
type S数据表过滤器比较 int

const (
	S数据表过滤器比较_不限 S数据表过滤器比较 = iota
	S数据表过滤器比较_包含
	S数据表过滤器比较_等于
	S数据表过滤器比较_不等于
	S数据表过滤器比较_大于
	S数据表过滤器比较_大于等于
	S数据表过滤器比较_小于
	S数据表过滤器比较_小于等于
)
